Case-file reference
Generated from the nanopnp/case/v0.5 schema by nanopnp.cli.reference; every
editable field is listed, and nothing here is written by hand. A path written
a.0.b names field b of each element of the list a.
The same schema is published as JSON Schema, generated from the
case document's own model, for tools that read or edit case files.
Default is what a document omitting the field is validated with. Validated
default is given for each switch of the model: the configuration of the published
ePNP-NS model (PHY-21, PHY-22). A run whose switch differs from it lists that switch
under the manifest's deviations (FR-25), so the schema default and the validated
default are deliberately not the same thing: a document that names no correction
solves classical PNP-NS and says so in its manifest.
Top level
| Path |
Type |
Default |
Accepts |
Validated default |
schema |
string |
required |
|
|
name |
string |
required |
|
|
outputs |
list of string |
[current] |
analyte_force, current, eof_rate, fields, rectification, transport_numbers |
|
| Path |
Type |
Default |
Accepts |
Validated default |
inputs.mesh.path |
path, optional |
unset |
|
|
inputs.mesh.artefact |
string, optional |
unset |
|
|
inputs.mesh.format |
string, optional |
unset |
|
|
inputs.mesh.groups |
mapping of string to string |
{} |
|
|
inputs.charge.path |
path, optional |
unset |
|
|
inputs.charge.artefact |
string, optional |
unset |
|
|
inputs.charge.format |
string, optional |
unset |
|
|
inputs.charge.groups |
mapping of string to string |
{} |
|
|
inputs.eps_r.path |
path, optional |
unset |
|
|
inputs.eps_r.artefact |
string, optional |
unset |
|
|
inputs.eps_r.format |
string, optional |
unset |
|
|
inputs.eps_r.groups |
mapping of string to string |
{} |
|
|
inputs.profile.path |
path, optional |
unset |
|
|
inputs.profile.artefact |
string, optional |
unset |
|
|
inputs.profile.format |
string, optional |
unset |
|
|
inputs.profile.groups |
mapping of string to string |
{} |
|
|
inputs.pqr.path |
path, optional |
unset |
|
|
inputs.pqr.artefact |
string, optional |
unset |
|
|
inputs.pqr.format |
string, optional |
unset |
|
|
inputs.pqr.groups |
mapping of string to string |
{} |
|
|
structure
This section drives stage 1, structure ingestion and alignment (FR-01 to
FR-03). A case carrying it walks every stage: stages 1 to 4 derive a pore
profile, and stages 5 and 6 assemble and mesh it.
| Path |
Type |
Default |
Accepts |
Validated default |
structure.source.path |
path |
required |
|
|
structure.source.variant |
string, optional |
unset |
|
|
structure.source.chains |
string |
all |
|
|
structure.source.selection |
string |
protein |
|
|
structure.ensemble.trajectory |
path, optional |
unset |
|
|
structure.ensemble.frames.last_ns |
number, optional |
unset |
|
|
structure.ensemble.frames.count |
integer, optional |
unset |
|
|
structure.symmetry.point_group |
string |
required |
|
|
structure.symmetry.axis |
choice |
auto |
auto, z |
|
structure.source.path: A PDB or mmCIF file, optionally gzipped (.pdb, .ent, .cif, .mmcif). MDAnalysis reads PDB and gemmi reads mmCIF. The file's +z SHALL point from the trans side to the cis side, and every selected atom SHALL carry its element in the file.
structure.source.variant: A label for the prepared structure (OPN-04). It is recorded in the manifest through the case and keys no stage: relabelling does not re-run anything.
structure.source.chains: all, or a comma-separated list of chain identifiers. A chain is its chain identifier, or its segment identifier where the chain column is blank. The selected chains SHALL number the point group's n (FR-03).
structure.source.selection: An MDAnalysis selection applied to the file; alternate locations are refused.
structure.ensemble.trajectory: A DCD, XTC, TRR or NetCDF trajectory whose frames are the ensemble; without one, the models of the source file are. Every frame is superposed on the C-alpha of the earliest selected frame (FR-01).
structure.ensemble.frames.last_ns: Keep the frames within this many ns of the last, by the times the file records; refused beyond the recorded span plus one frame interval.
structure.ensemble.frames.count: Keep this many frames at the uniform stride floor(N/count), ending on the last frame of the window of N.
structure.symmetry.point_group: C with n >= 1, e.g. C12 for ClyA (FR-03).
structure.symmetry.axis: auto: the Cn axis by chain-permutation superposition, gated on the chains' spacing, the rotation angle and a 10 degree limit from the file's z (FR-02). z: the file's z axis through its origin, refused where n >= 2 and it strays more than 0.01 nm from the detected axis over the C-alpha extent.
geometry
Of this section, geometry.density drives stages 2 and 3, the density map
and its reduction to (r, z) (FR-04 to FR-06), and geometry.contour drives
stage 4, the pore wall's contour and its gate (FR-07, FR-08), on a case
carrying structure:. The membrane and reservoir keys are read by stage 5,
CAD assembly (FR-09); the analyte on a generated mesh is refused naming FR-21.
Beside inputs.mesh the section is refused, naming both.
| Path |
Type |
Default |
Accepts |
Validated default |
geometry.density.grid_spacing_nm |
number |
0.05 |
|
|
geometry.density.kernel |
choice |
gaussian_vdw |
gaussian_vdw |
|
geometry.density.sharpness |
number |
0.93 |
|
|
geometry.contour.isolevel |
number |
0.25 |
|
|
geometry.contour.smoothing |
choice |
taubin |
taubin, none |
|
geometry.contour.simplify_tol_nm |
number |
0.02 |
|
|
geometry.membrane.thickness_nm |
number |
2.8 |
|
|
geometry.membrane.centre_z_nm |
number |
0.0 |
|
|
geometry.reservoir.radius_nm |
number |
250.0 |
|
|
geometry.analyte.shape |
choice |
required |
sphere, prolate_spheroid, oblate_spheroid |
|
geometry.analyte.a_nm |
number |
required |
|
|
geometry.analyte.b_nm |
number, optional |
unset |
|
|
geometry.analyte.z_nm |
number |
0.0 |
|
|
geometry.analyte.charge_e |
number |
0.0 |
|
|
geometry.pore.shape |
choice |
required |
cylinder |
|
geometry.pore.radius_nm |
number |
required |
|
|
geometry.contour.isolevel: The density isolevel whose contour is the pore wall, finite and in (0, 1). The source work used 0.25 without a sensitivity study (section 5.3.1 NOTE on geometry.contour).
geometry.contour.smoothing: taubin: resample at arc length h/2, then ten Taubin passes of lambda 0.5 and mu -0.53, which keep the enclosed area where Laplacian smoothing shrinks it. none skips both (section 5.2.1).
geometry.contour.simplify_tol_nm: The Douglas-Peucker tolerance, finite, positive and below the density grid spacing h: a larger one discards resolved geometry and breaks the margin of the closing of radius 2h that the feature-size gate relies on (section 5.2.1 NOTE).
charge
Of this section, ph, forcefield and titration drive the protonation
stage, the first half of stage 7 (FR-12, PHY-16 step 3), which runs PDB2PQR
and PROPKA on every frame of a structure: case, and which
nanopnp stage protonation runs alone. smearing is read by stage 7's
deposition, exclusion_offset_nm by stage 5 and dielectric_transition_nm
by stage 7. Beside inputs.pqr the three protonation keys are refused set
away from their defaults, naming both.
| Path |
Type |
Default |
Accepts |
Validated default |
charge.ph |
number |
7.5 |
|
|
charge.forcefield |
choice |
CHARMM |
CHARMM, PEOEPB, SWANSON |
CHARMM |
charge.titration |
choice |
propka |
propka, none |
propka |
charge.smearing.sharpness |
number |
0.5 |
|
0.5 |
charge.smearing.grid_spacing_nm |
number |
0.005 |
|
|
charge.smearing.axis_cutoff_nm |
number |
0.01 |
|
|
charge.exclusion_offset_nm |
number |
0.0 |
|
0.0 |
charge.dielectric_transition_nm |
number |
0.0 |
|
0.0 |
charge.ph: The pH PROPKA assigns protonation states at, in [0, 14] (PHY-16 step 3). A condition of the experiment, not a deviation; refused away from its default beside titration: none, where it reaches no calculation.
charge.forcefield: The PDB2PQR force field, passed as both --ff and --ffout. AMBER, PARSE and TYL06 give charged atoms a zero radius and are refused (section 5.3.1 NOTE on the protonation keys).
charge.titration: propka: PROPKA's states at charge.ph. none: every residue keeps the force field's standard state.
charge.exclusion_offset_nm: The ion-exclusion shell's width a, in nm: stage 5 offsets the profile by a and meshes the shell as material exclusion, with wall on its outer surface. 0, the validated default, builds none; refused at or below twice the density grid spacing, and beside inputs.mesh (section 5.2.1 NOTE on the ion-exclusion shell).
charge.dielectric_transition_nm: The width delta, in nm, of the protein's dielectric transition to water: stage 7 derives chi from the profile as a C1 step of width delta. 0, the validated default, keeps PHY-20's sharp split; refused below the density grid spacing, beside inputs.eps_r and beside inputs.mesh (section 4.4 NOTE on the derived solid fraction).
electrolyte
| Path |
Type |
Default |
Accepts |
Validated default |
electrolyte.species.0.name |
string |
required |
|
|
electrolyte.species.0.z |
integer |
required |
|
|
electrolyte.concentration_M |
number |
required |
|
|
electrolyte.temperature_K |
number |
298.15 |
|
|
electrolyte.parameters |
string |
willems2020_nacl |
willems2020_nacl |
willems2020_nacl |
electrolyte.driver |
choice |
average |
average, ionic_strength |
average |
electrolyte.corrections.diffusivity.model |
string |
none |
none, willems2020_nacl |
willems2020_nacl |
electrolyte.corrections.diffusivity.concentration |
boolean |
true |
|
true |
electrolyte.corrections.diffusivity.wall |
boolean |
true |
|
true |
electrolyte.corrections.mobility.model |
string |
none |
none, willems2020_nacl |
willems2020_nacl |
electrolyte.corrections.mobility.concentration |
boolean |
true |
|
true |
electrolyte.corrections.mobility.wall |
boolean |
true |
|
true |
electrolyte.corrections.viscosity.model |
string |
none |
none, willems2020_nacl |
willems2020_nacl |
electrolyte.corrections.viscosity.concentration |
boolean |
true |
|
true |
electrolyte.corrections.viscosity.wall |
boolean |
true |
|
true |
electrolyte.corrections.permittivity.model |
string |
none |
none, willems2020_nacl |
willems2020_nacl |
electrolyte.corrections.permittivity.concentration |
boolean |
true |
|
true |
electrolyte.corrections.permittivity.wall |
boolean |
true |
|
true |
electrolyte.corrections.density.model |
string |
none |
none, willems2020_nacl |
willems2020_nacl |
electrolyte.corrections.density.concentration |
boolean |
true |
|
true |
electrolyte.corrections.density.wall |
boolean |
true |
|
true |
electrolyte.corrections.steric.model |
choice |
none |
none, borukhov |
borukhov |
electrolyte.corrections.steric.a_ion_nm |
number, optional |
unset |
|
|
electrolyte.corrections.steric.a_water_nm |
number, optional |
unset |
|
|
boundary_conditions
| Path |
Type |
Default |
Accepts |
Validated default |
boundary_conditions.bias_V |
number |
required |
|
|
boundary_conditions.ground |
choice |
cis |
cis, trans |
|
boundary_conditions.walls.ion_flux |
choice |
no_flux |
no_flux, prescribed |
no_flux |
boundary_conditions.walls.slip |
choice |
no_slip |
no_slip, navier, free |
no_slip |
boundary_conditions.wall_charge_C_m2 |
number |
0.0 |
|
|
boundary_conditions.wall_charge_C_m2: The uniform surface charge density of an idealised pore's wall, in C/m^2; read only beside geometry.pore..
physics
| Path |
Type |
Default |
Accepts |
Validated default |
physics.model |
string |
epnp-ns |
epnp-ns, pb, pb-linear, pnp, pnp-ns, poisson |
epnp-ns |
physics.flow |
boolean |
true |
|
true |
physics.variable_density |
boolean |
true |
|
true |
physics.inertia |
boolean |
true |
|
true |
physics.dielectric_gradient_forces |
boolean |
false |
|
false |
physics.solid_permittivities |
mapping of string to Annotated[float, FieldInfo(annotation=NoneType, required=True, metadata=[Gt(gt=0.0), _PydanticGeneralMetadata(allow_inf_nan=False)])] |
{} |
|
|
numerics
| Path |
Type |
Default |
Accepts |
Validated default |
numerics.elements.phi |
string |
P2 |
|
|
numerics.elements.c |
string |
P2 |
|
|
numerics.elements.u |
string |
P2 |
|
|
numerics.elements.p |
string |
P1 |
|
|
numerics.mesh.backend |
string |
netgen |
gmsh, netgen |
|
numerics.mesh.wall_h_nm |
number or choice |
auto |
auto |
|
numerics.mesh.wall_for_concentration_M |
number, optional |
unset |
|
|
numerics.mesh.maxh_nm |
number, optional |
unset |
|
|
numerics.mesh.size_scale |
number |
1.0 |
|
|
numerics.mesh.boundary_layer |
boolean |
false |
|
|
numerics.nonlinear.strategy |
choice |
newton |
newton, hybrid |
newton |
numerics.nonlinear.damping |
choice |
residual |
residual, backtracking |
residual |
numerics.nonlinear.max_iter |
integer |
100 |
|
|
numerics.nonlinear.rtol |
number |
1.0e-06 |
|
|
numerics.continuation |
choice |
default_ladder |
default_ladder, none |
default_ladder |
numerics.stabilisation |
string |
none |
none, reference, supg |
none |
numerics.wall_distance.sources |
string |
wall |
|
wall |
numerics.wall_distance.max_distance_nm |
number |
3.0 |
|
3.0 |
numerics.linear.solver |
string |
umfpack |
superlu, umfpack |
umfpack |
numerics.mesh.backend: The mesher backend, checked against the mesher registry (section 5.5)..
numerics.mesh.wall_for_concentration_M: The concentration, in mol/L, at whose Debye length wall_h_nm: auto is sized; none sizes it at the case's own..
numerics.mesh.maxh_nm: The global element size of an idealised pore, in nm; none takes the global size of the size field. Read only beside geometry.pore..
numerics.stabilisation: Residual stabilisation mode, checked against the stabilisation registry (section 5.5)..
numerics.linear.solver: Direct linear solver, checked against the solver registry (section 5.5)..