Skip to content
124 changes: 50 additions & 74 deletions .basedpyright/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -5029,7 +5029,7 @@
"code": "reportUnknownVariableType",
"range": {
"startColumn": 12,
"endColumn": 21,
"endColumn": 25,
"lineCount": 1
}
},
Expand All @@ -5052,48 +5052,8 @@
{
"code": "reportUnknownVariableType",
"range": {
"startColumn": 12,
"endColumn": 13,
"lineCount": 1
}
},
{
"code": "reportUnknownVariableType",
"range": {
"startColumn": 16,
"endColumn": 29,
"lineCount": 1
}
},
{
"code": "reportAny",
"range": {
"startColumn": 28,
"endColumn": 35,
"lineCount": 1
}
},
{
"code": "reportUnknownArgumentType",
"range": {
"startColumn": 34,
"endColumn": 45,
"lineCount": 1
}
},
{
"code": "reportUnknownVariableType",
"range": {
"startColumn": 12,
"endColumn": 25,
"lineCount": 1
}
},
{
"code": "reportUnknownArgumentType",
"range": {
"startColumn": 40,
"endColumn": 53,
"startColumn": 8,
"endColumn": 17,
"lineCount": 1
}
},
Expand Down Expand Up @@ -5204,8 +5164,16 @@
{
"code": "reportUnknownArgumentType",
"range": {
"startColumn": 31,
"endColumn": 44,
"startColumn": 30,
"endColumn": 56,
"lineCount": 1
}
},
{
"code": "reportUnknownArgumentType",
"range": {
"startColumn": 42,
"endColumn": 55,
"lineCount": 1
}
},
Expand Down Expand Up @@ -5260,25 +5228,25 @@
{
"code": "reportUnknownMemberType",
"range": {
"startColumn": 57,
"endColumn": 76,
"startColumn": 12,
"endColumn": 31,
"lineCount": 1
}
},
{
"code": "reportUnknownArgumentType",
"range": {
"startColumn": 62,
"endColumn": 52,
"lineCount": 2
"startColumn": 12,
"endColumn": 67,
"lineCount": 1
}
},
{
"code": "reportUnknownArgumentType",
"range": {
"startColumn": 62,
"endColumn": 52,
"lineCount": 2
"startColumn": 12,
"endColumn": 67,
"lineCount": 1
}
},
{
Expand Down Expand Up @@ -5345,14 +5313,6 @@
"lineCount": 1
}
},
{
"code": "reportArgumentType",
"range": {
"startColumn": 30,
"endColumn": 53,
"lineCount": 1
}
},
{
"code": "reportUnknownVariableType",
"range": {
Expand Down Expand Up @@ -5485,15 +5445,23 @@
"code": "reportAny",
"range": {
"startColumn": 8,
"endColumn": 14,
"endColumn": 13,
"lineCount": 1
}
},
{
"code": "reportUnknownArgumentType",
"range": {
"startColumn": 25,
"endColumn": 39,
"startColumn": 24,
"endColumn": 38,
"lineCount": 1
}
},
{
"code": "reportAny",
"range": {
"startColumn": 11,
"endColumn": 36,
"lineCount": 1
}
}
Expand Down Expand Up @@ -5928,16 +5896,8 @@
{
"code": "reportUnknownMemberType",
"range": {
"startColumn": 18,
"endColumn": 25,
"lineCount": 1
}
},
{
"code": "reportUnknownMemberType",
"range": {
"startColumn": 28,
"endColumn": 68,
"startColumn": 25,
"endColumn": 65,
"lineCount": 1
}
},
Expand Down Expand Up @@ -40249,6 +40209,14 @@
"lineCount": 4
}
},
{
"code": "reportAbstractUsage",
"range": {
"startColumn": 19,
"endColumn": 18,
"lineCount": 4
}
},
{
"code": "reportCallIssue",
"range": {
Expand Down Expand Up @@ -40377,6 +40345,14 @@
"lineCount": 1
}
},
{
"code": "reportAbstractUsage",
"range": {
"startColumn": 19,
"endColumn": 18,
"lineCount": 4
}
},
{
"code": "reportCallIssue",
"range": {
Expand Down
12 changes: 9 additions & 3 deletions doc/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,9 @@
# Sphinx started complaining about these in 8.2.1(-ish)
# -AK, 2025-02-24
["py:class", r"TypeAliasForwardRef"],
["py:class", r"arraycontext.typing._UserDefinedArrayContainer"],
["py:class", r"_ProxyNeighborEvaluationResult"],
["py:class", r"arraycontext.typing._UserDefinedArithArrayContainer"],
["py:class", r"TreeKind"],
["py:class", r"arraycontext.typing._UserDefinedArrayContainer"],
]


Expand All @@ -49,10 +49,13 @@
"NDArray": "obj:numpy.typing.NDArray",
"np.integer": "obj:numpy.integer",
"np.floating": "obj:numpy.floating",
"np.inexact": "obj:numpy.inexact",
"np.random.Generator": "class:numpy.random.Generator",
# pytools
"ObjectArrayND": "obj:pytools.obj_array.ObjectArrayND",
"T": "obj:pytools.T",
"obj_array.ObjectArray1D": "obj:pytools.obj_array.ObjectArray1D",
"obj_array.ObjectArray2D": "obj:pytools.obj_array.ObjectArray2D",
# pyopencl
"WaitList": "obj:pyopencl.WaitList",
# pymbolic
Expand All @@ -61,7 +64,9 @@
"MultiVector": "obj:pymbolic.geometric_algebra.MultiVector",
"Variable": "class:pymbolic.primitives.Variable",
# arraycontext
"ArrayContainer": "obj:arraycontext.ArrayContainer",
"ArrayOrContainerOrScalar": "obj:arraycontext.ArrayOrContainerOrScalar",
"ArrayOrContainerT": "obj:arraycontext.ArrayOrContainerT",
"PyOpenCLArrayContext": "class:arraycontext.PyOpenCLArrayContext",
"ScalarLike": "obj:arraycontext.ScalarLike",
# modepy
Expand All @@ -70,7 +75,7 @@
"Discretization": "class:meshmode.discretization.Discretization",
"DOFArray": "class:meshmode.dof_array.DOFArray",
# boxtree
# "TreeKind": "obj:boxtree.tree_build.TreeKind",
"TreeKind": "obj:boxtree.tree_build.TreeKind",
# sumpy
"ExpansionBase": "class:sumpy.expansion.ExpansionBase",
"ExpansionFactoryBase": "class:sumpy.expansion.ExpansionFactoryBase",
Expand All @@ -88,6 +93,7 @@
"data:pytential.symbolic.dof_desc.DOFDescriptorLike",
"sym.DOFDescriptor": "class:pytential.symbolic.dof_desc.DOFDescriptor",
"sym.IntG": "class:pytential.symbolic.primitives.IntG",
"sym.var": "obj:pytential.symbolic.primitives.var",
}


Expand Down
21 changes: 17 additions & 4 deletions doc/linalg.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ scheme is used:
component of the Stokeslet.
* ``cluster`` refers to a piece of a ``block`` as used by the recursive
proxy-based skeletonization of the direct solver algorithms. Clusters
are represented by a :class:`~pytential.linalg.TargetAndSourceClusterList`.
are represented by a :class:`~pytential.linalg.utils.TargetAndSourceClusterList`.

GMRES
-----
Expand All @@ -20,17 +20,30 @@ GMRES
Hierarchical Direct Solver
--------------------------

.. note::

High-level API for direct solvers is in progress.

Low-level Functionality
-----------------------

.. warning::

All the classes and routines in this module are experimental and the
API can change at any point.

.. automodule:: pytential.linalg.proxy
.. automodule:: pytential.linalg.utils
.. automodule:: pytential.linalg.skeletonization

Internal Functionality and Utilities
------------------------------------

Internal Functionality
----------------------
.. warning::

All the classes and routines in this module are experimental and the
API can change at any point.

.. automodule:: pytential.linalg.utils
.. automodule:: pytential.linalg.direct_solver_symbolic

.. vim: sw=4:tw=75:fdm=marker
9 changes: 0 additions & 9 deletions doc/misc.rst
Original file line number Diff line number Diff line change
Expand Up @@ -162,12 +162,3 @@ Andreas Klöckner's work on :mod:`pytential` was supported in part by
AK also gratefully acknowledges a hardware gift from Nvidia Corporation. The
views and opinions expressed herein do not necessarily reflect those of the
funding agencies.

Cross-References to Other Documentation
=======================================

.. currentmodule:: numpy

.. class:: int8

See :class:`numpy.generic`.
23 changes: 0 additions & 23 deletions pytential/linalg/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,22 +23,6 @@
THE SOFTWARE.
"""

from pytential.linalg.proxy import (
ProxyClusterGeometryData,
ProxyGenerator,
ProxyGeneratorBase,
ProxyPointSource,
ProxyPointTarget,
QBXProxyGenerator,
gather_cluster_neighbor_points,
partition_by_nodes,
)
from pytential.linalg.skeletonization import (
SkeletonizationResult,
SkeletonizationWrangler,
make_skeletonization_wrangler,
skeletonize_by_proxy,
)
from pytential.linalg.utils import (
IndexList,
TargetAndSourceClusterList,
Expand All @@ -52,11 +36,4 @@
"IndexList", "TargetAndSourceClusterList",
"make_index_list", "make_index_cluster_cartesian_product",
"interp_decomp",

"ProxyClusterGeometryData", "ProxyPointTarget", "ProxyPointSource",
"ProxyGeneratorBase", "ProxyGenerator", "QBXProxyGenerator",
"partition_by_nodes", "gather_cluster_neighbor_points",

"SkeletonizationWrangler", "make_skeletonization_wrangler",
"SkeletonizationResult", "skeletonize_by_proxy",
)
2 changes: 2 additions & 0 deletions pytential/linalg/direct_solver_symbolic.py
Original file line number Diff line number Diff line change
Expand Up @@ -261,3 +261,5 @@ def __init__(self, source: DOFDescriptorLike, target: DOFDescriptorLike) -> None
self.operand_rec = _LocationReplacer(source, default_source=source)

# }}}

# vim: foldmethod=marker
16 changes: 0 additions & 16 deletions pytential/linalg/gmres.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,26 +24,10 @@
"""

__doc__ = """

.. autofunction:: gmres

.. autoclass:: GMRESResult

.. autoexception:: GMRESError

.. autoclass:: ResidualPrinter

References
----------
.. class:: ArrayContainer

See :class:`arraycontext.ArrayContainer`.

.. currentmodule:: arraycontext.typing

.. class:: ArrayOrContainerT

See :class:`arraycontext.ArrayOrContainerT`.
"""

from dataclasses import dataclass
Expand Down
Loading
Loading