e2m2e.status#

Unified result-status contract shared by every layer.

ADR 0024's status vocabulary—ConvergenceState, FailureCause, ResultStatus and the CAUSE_STATUS mapping—is consumed by the data, algorithm and numerics layers alike, so its single home is a package-root shared-kernel leaf: importable by every layer, importing no layer itself (ADR 0039). The historical paths e2m2e.data.templates and e2m2e.algorithm.results re-export these objects with unchanged identity.

Attributes#

Classes#

ConvergenceState

算法最终状态。

FailureCause

算法最终结局的稳定原因码。

ResultStatus

同步算法结果共享的最终状态三元组。

Module Contents#

class e2m2e.status.ConvergenceState(*args, **kwds)#

Bases: enum.Enum

算法最终状态。

ITERATING = 'iterating'#
CONVERGED = 'converged'#
DIVERGED = 'diverged'#
STAGNATED = 'stagnated'#
MAX_ITERATIONS = 'max_iterations'#
INFEASIBLE = 'infeasible'#
COLLISION = 'collision'#
FAILED = 'failed'#
class e2m2e.status.FailureCause(*args, **kwds)#

Bases: enum.Enum

算法最终结局的稳定原因码。

NONE = 'none'#
INTEGRATION_FAILED = 'integration_failed'#
SINGULAR_JACOBIAN = 'singular_jacobian'#
INVALID_PERIOD = 'invalid_period'#
MAX_ITERATIONS_REACHED = 'max_iterations_reached'#
STAGNATION_DETECTED = 'stagnation_detected'#
DIVERGENCE_DETECTED = 'divergence_detected'#
NO_INTERSECTION = 'no_intersection'#
CONSTRAINT_VIOLATION = 'constraint_violation'#
BODY_COLLISION = 'body_collision'#
LEVEL1_CORRECTION_FAILED = 'level1_correction_failed'#
BACKEND_FAILURE = 'backend_failure'#
INVALID_INPUT = 'invalid_input'#
UNKNOWN = 'unknown'#
e2m2e.status.CAUSE_STATUS: dict[FailureCause, ConvergenceState]#
class e2m2e.status.ResultStatus#

同步算法结果共享的最终状态三元组。

status: ConvergenceState#
cause: FailureCause#
message: str#
__post_init__() → None#