Modularity measurements¶
Generated by nanopnp.validation.modularity.render_measurements from the source tree
this site was built from. The modularity report quotes
these measurements at a named commit; VER-61 pins the static and string relations.
Import relation¶
1038 import edges between nanopnp modules, by kind: top 602, deferred 157, typing 160, string 119. Measured by import_edges and subpackage_relation.
Static relation (top, deferred and typing)¶
Each cell counts the import statements by which the row's subpackage imports the column's.
| from \ to | api |
charge |
cli |
core |
density |
geometry |
gui |
io |
materials |
mesh |
nanopnp |
numerics |
physics |
pipeline |
plot |
post |
solve |
structure |
sweep |
symmetry |
validation |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
api |
8 | 13 | 1 | 1 | 14 | 2 | 1 | 1 | 4 | ||||||||||||
charge |
19 | 7 | 3 | 14 | 2 | 5 | 3 | ||||||||||||||
cli |
16 | 3 | 13 | 1 | 3 | 22 | 4 | 2 | 1 | 11 | 25 | ||||||||||
core |
1 | ||||||||||||||||||||
density |
9 | 5 | 2 | ||||||||||||||||||
geometry |
12 | 1 | 12 | 1 | 2 | 2 | |||||||||||||||
gui |
2 | 8 | 10 | 2 | 7 | 29 | 2 | 2 | 14 | 2 | 2 | 2 | 4 | ||||||||
io |
10 | 3 | 1 | 1 | |||||||||||||||||
materials |
9 | 2 | |||||||||||||||||||
mesh |
16 | 11 | 12 | ||||||||||||||||||
nanopnp |
4 | 8 | 3 | 5 | 1 | 1 | |||||||||||||||
numerics |
6 | ||||||||||||||||||||
physics |
13 | 2 | 4 | 1 | 15 | ||||||||||||||||
pipeline |
1 | 7 | 1 | 14 | 3 | 4 | 2 | 2 | 4 | 1 | |||||||||||
plot |
3 | 2 | 3 | 5 | 4 | 2 | 5 | 4 | 1 | 2 | 2 | ||||||||||
post |
2 | 8 | 2 | 7 | 6 | 4 | 10 | 3 | |||||||||||||
solve |
2 | 9 | 5 | 2 | 3 | 8 | 7 | ||||||||||||||
structure |
5 | 8 | |||||||||||||||||||
sweep |
4 | 10 | 1 | 2 | 1 | 2 | 1 | 1 | |||||||||||||
symmetry |
4 | 4 | 5 | ||||||||||||||||||
validation |
6 | 2 | 14 | 3 | 6 | 17 | 1 | 1 | 6 | 4 | 2 | 1 |
String relation¶
| from \ to | api |
charge |
cli |
core |
density |
geometry |
gui |
io |
materials |
mesh |
nanopnp |
numerics |
physics |
pipeline |
plot |
post |
solve |
structure |
sweep |
symmetry |
validation |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
api |
|||||||||||||||||||||
charge |
|||||||||||||||||||||
cli |
3 | 1 | 2 | 1 | 1 | 1 | |||||||||||||||
core |
5 | 6 | 4 | 5 | 1 | 10 | 1 | 8 | 2 | 5 | 4 | 12 | 8 | 4 | 5 | 2 | 1 | 14 | |||
density |
|||||||||||||||||||||
geometry |
|||||||||||||||||||||
gui |
|||||||||||||||||||||
io |
|||||||||||||||||||||
materials |
|||||||||||||||||||||
mesh |
|||||||||||||||||||||
nanopnp |
|||||||||||||||||||||
numerics |
|||||||||||||||||||||
physics |
|||||||||||||||||||||
pipeline |
|||||||||||||||||||||
plot |
|||||||||||||||||||||
post |
|||||||||||||||||||||
solve |
|||||||||||||||||||||
structure |
|||||||||||||||||||||
sweep |
|||||||||||||||||||||
symmetry |
|||||||||||||||||||||
validation |
Strongly connected components¶
Measured by components. Each lists its internal edges, the number of import
statements carrying each, lightest first: those are the candidate cuts.
- top: none
- runtime (top and deferred): none
- static:
- 10 members:
core,density,geometry,io,materials,mesh,numerics,physics,structure,symmetry. Lightest edges:core → io(1),geometry → density(1),geometry → mesh(1),io → numerics(1),io → physics(1),physics → mesh(1)
- 10 members:
- static and string:
- 19 members:
api,charge,core,density,geometry,gui,io,materials,mesh,numerics,physics,pipeline,plot,post,solve,structure,sweep,symmetry,validation. Lightest edges:api → materials(1),api → mesh(1),api → solve(1),api → structure(1),core → gui(1),core → materials(1)
- 19 members:
Module-level cycles among top imports, each package __init__ an import runs included: 0.
Stage conformance¶
Measured by stage_conformance, against Stage.key(inputs) and Stage.run(inputs, *, progress, cancel).
| Stage | Class | key signature |
describe |
run signature |
|---|---|---|---|---|
case |
nanopnp.pipeline.case:CaseStage |
(inputs) |
yes | (inputs, *, progress, cancel) |
structure |
nanopnp.structure.stage:StructureStage |
(inputs) |
yes | (inputs, *, progress, cancel) |
density |
nanopnp.density.stage:DensityStage |
(inputs) |
yes | (inputs, *, progress, cancel) |
symmetry |
nanopnp.symmetry.stage:SymmetryStage |
(inputs) |
yes | (inputs, *, progress, cancel) |
contour |
nanopnp.geometry.contour:ContourStage |
(inputs) |
yes | (inputs, *, progress, cancel) |
region |
nanopnp.geometry.region:RegionStage |
(inputs) |
yes | (inputs, *, progress, cancel) |
mesh |
nanopnp.mesh.ingest:MeshStage |
(inputs) |
yes | (inputs, *, progress, cancel) |
protonation |
nanopnp.charge.protonation:ProtonationStage |
(inputs) |
yes | (inputs, *, progress, cancel) |
charge |
nanopnp.charge.stage:FieldStage |
(inputs) |
yes | (inputs, *, progress, cancel) |
materials |
nanopnp.materials.stage:MaterialsStage |
(inputs) |
yes | (inputs, *, progress, cancel) |
solve |
nanopnp.solve.stage:SolveStage |
(inputs) |
yes | (inputs, *, progress, cancel) |
qoi |
nanopnp.post.stage:QoIStage |
(inputs) |
yes | (inputs, *, progress, cancel) |
report |
nanopnp.post.stage:ReportStage |
(inputs) |
yes | (inputs, *, progress, cancel) |
Stage sets written into pipeline/run.py, measured by stage_sets:
- none
Extension points¶
Measured by extension_points. Spelled in counts the modules outside the home that
write a member's name as a string; none is not counted.
| Point | Kind | Home | Members | Spelled in |
|---|---|---|---|---|
| stages | registry | core/stages.py |
13 | 54 |
| corrections | registry | materials/models.py |
1 | 6 |
| physics models | registry | physics/models.py |
6 | 3 |
| stabilisation | registry | physics/stabilisation.py |
2 | 3 |
| charge forms | registry | charge/fields.py |
3 | 0 |
| mesher | registry | mesh/meshers.py |
2 | 7 |
| linear solver | registry | numerics/linear.py |
2 | 2 |
| outputs | branch | io/case.py |
6 | 22 |
| steric models | branch | io/case.py |
1 | 1 |
| correction forms | branch | materials/forms.py |
6 | 0 |
The backend (QR-13)¶
38 modules in 11 subpackages import NGSolve or Netgen, measured by backend_imports. Section 5.4.1 names defined: none.
| Subpackage | Modules |
|---|---|
charge |
3 |
density |
1 |
geometry |
3 |
gui |
2 |
materials |
2 |
mesh |
5 |
numerics |
3 |
physics |
9 |
post |
5 |
solve |
2 |
validation |
3 |
The public surface¶
PUBLIC has 19 names; its TYPE_CHECKING mirror has 19, differing in none. Outside PUBLIC: with_section, register. Measured by surface.
Size¶
The ten longest modules and functions, measured by sizes.
| Module | Lines |
|---|---|
physics/models.py |
1926 |
validation/modularity.py |
1667 |
cli/__init__.py |
1572 |
validation/apbs.py |
1446 |
charge/protonation.py |
1384 |
pipeline/run.py |
1205 |
geometry/region.py |
1178 |
charge/fields.py |
1082 |
charge/stage.py |
1029 |
pipeline/checks.py |
979 |
| Function | Lines |
|---|---|
cli/__init__.py build_parser |
342 |
solve/continuation.py default_ladder |
285 |
core/stages.py _register_builtins |
265 |
numerics/newton.py damped_newton |
204 |
structure/stage.py align |
152 |
geometry/contour.py measure |
149 |
physics/models.py CoupledModel.residual_form |
146 |
validation/modularity.py render_measurements |
143 |
structure/read.py select |
138 |
charge/stage.py FieldStage._produce |
115 |
Version literals¶
6 non-docstring strings name a release vX.Y, measured by version_literals; VER-67 refuses one naming a tagged release.
cli/reference.py:352io/case.py:94pipeline/checks.py:598pipeline/checks.py:604validation/case_leaves.py:185validation/modularity.py:1282