eqiora.fsi
Fixed-mesh monolithic FSI intent, plan, and typed evidence.
Module authority: bindings/python/python/eqiora/fsi.py
Shipped stub: bindings/python/python/eqiora/fsi.pyi
This module publishes 6 literal __all__ spellings. Member entries below are exact signatures under documented owning types; they do not imply member-level behavioral prose.
FixedMeshMonolithic
Section titled “FixedMeshMonolithic”Complete fixed-mesh monolithic FSI request with no hidden numerical state.
Authority: crates/eqiora-python/src/fsi.rs::PyFixedMeshMonolithic
@finalclass FixedMeshMonolithic: def __new__(cls, *, time_step_s: float, steps: int, initial_velocity_m_per_s: tuple[float, float], initial_free_interface_displacement_m: tuple[float, float], length_scale_m: float, velocity_scale_m_per_s: float, pressure_scale_pa: float, relative_tolerance: float, absolute_tolerance: float, maximum_iterations: int) -> FixedMeshMonolithic: ... @property def time_step_s(self) -> float: ... @property def steps(self) -> int: ... @property def initial_velocity_m_per_s(self) -> tuple[float, float]: ... @property def initial_free_interface_displacement_m(self) -> tuple[float, float]: ... @property def length_scale_m(self) -> float: ... @property def velocity_scale_m_per_s(self) -> float: ... @property def pressure_scale_pa(self) -> float: ... @property def relative_tolerance(self) -> float: ... @property def absolute_tolerance(self) -> float: ... @property def maximum_iterations(self) -> int: ... def __eq__(self, other: object, /) -> bool: ... def __hash__(self) -> int: ...FixedMeshMonolithicEvidence
Section titled “FixedMeshMonolithicEvidence”Typed evidence for one fixed-mesh monolithic FSI result.
Authority: crates/eqiora-python/src/fsi.rs::PyFixedMeshMonolithicEvidence
@finalclass FixedMeshMonolithicEvidence: @property def trajectory_digest(self) -> str: ... @property def run_digest(self) -> str: ... @property def fluid_cells(self) -> npt.NDArray[np.uint32]: ... @property def solid_cells(self) -> npt.NDArray[np.uint32]: ... @property def interface_facets(self) -> npt.NDArray[np.uint32]: ... @property def states(self) -> tuple[FixedMeshMonolithicStateEvidence, FixedMeshMonolithicStateEvidence]: ... def state(self, state: TrajectoryState, /) -> FixedMeshMonolithicStateEvidence: ... @property def case_ids(self) -> tuple[str, str]: ...FixedMeshMonolithicPlan
Section titled “FixedMeshMonolithicPlan”Immutable fully resolved fixed-mesh monolithic FSI plan.
Authority: crates/eqiora-python/src/fsi.rs::PyFixedMeshMonolithicPlan
@finalclass FixedMeshMonolithicPlan: @property def model_digest(self) -> str: ... @property def semantic_revision(self) -> int: ... @property def geometry_digest(self) -> str: ... @property def correspondence_digest(self) -> str: ... @property def mesh_digest(self) -> str: ... @property def realization_digest(self) -> str: ... @property def realization_revision(self) -> int: ... @property def spatial_dimension(self) -> int: ... @property def coupling_method(self) -> str: ... @property def geometry_motion(self) -> str: ... @property def mesh_kind(self) -> str: ... @property def fluid_velocity_space(self) -> str: ... @property def fluid_pressure_space(self) -> str: ... @property def solid_velocity_space(self) -> str: ... @property def solid_displacement_space(self) -> str: ... @property def time_integrator(self) -> str: ... @property def time_step_s(self) -> float: ... @property def steps(self) -> int: ... @property def initial_velocity_m_per_s(self) -> tuple[float, float]: ... @property def initial_free_interface_displacement_m(self) -> tuple[float, float]: ... @property def length_scale_m(self) -> float: ... @property def velocity_scale_m_per_s(self) -> float: ... @property def pressure_scale_pa(self) -> float: ... @property def solver_algorithm(self) -> str: ... @property def preconditioner(self) -> str: ... @property def reduction(self) -> str: ... @property def relative_tolerance(self) -> float: ... @property def absolute_tolerance(self) -> float: ... @property def maximum_iterations(self) -> int: ... @property def solver_backend(self) -> str: ... @property def execution_adapter(self) -> str: ... @property def workers(self) -> int: ... @property def canonical_bytes(self) -> bytes: ... def __eq__(self, other: object, /) -> bool: ... def __hash__(self) -> int: ...FixedMeshMonolithicStateEvidence
Section titled “FixedMeshMonolithicStateEvidence”Solver and scientific observations for one accepted FSI state.
Authority: crates/eqiora-python/src/fsi.rs::PyFixedMeshMonolithicStateEvidence
@finalclass FixedMeshMonolithicStateEvidence: @property def state_digest(self) -> str: ... @property def interface_vertices(self) -> npt.NDArray[np.uint32]: ... @property def fluid_action(self) -> npt.NDArray[np.float64]: ... @property def solid_action(self) -> npt.NDArray[np.float64]: ... @property def action_imbalance(self) -> npt.NDArray[np.float64]: ... @property def previous_kinetic_energy_j_per_m(self) -> float: ... @property def next_kinetic_energy_j_per_m(self) -> float: ... @property def previous_elastic_energy_j_per_m(self) -> float: ... @property def next_elastic_energy_j_per_m(self) -> float: ... @property def kinetic_increment_j_per_m(self) -> float: ... @property def elastic_increment_j_per_m(self) -> float: ... @property def viscous_dissipation_j_per_m(self) -> float: ... @property def energy_defect_j_per_m(self) -> float: ... @property def numerical_residual_norm(self) -> float: ... @property def continuity_residual_norm(self) -> float: ... @property def kinematic_residual_norm(self) -> float: ... @property def interface_velocity_jump_norm(self) -> float: ... @property def interface_action_imbalance_n_per_m(self) -> float: ... @property def solve(self) -> LinearSolveSummary: ... @property def assembly_packets(self) -> int: ... @property def assembly_targets(self) -> int: ...fixed_mesh_monolithic_evidence
Section titled “fixed_mesh_monolithic_evidence”Select typed fixed-mesh monolithic evidence from its result.
Authority: crates/eqiora-python/src/fsi.rs::fixed_mesh_monolithic_evidence
def fixed_mesh_monolithic_evidence(result: Result, /) -> FixedMeshMonolithicEvidence: ...resolve
Section titled “resolve”Resolve a complete FSI intent without executing it.
Authority: crates/eqiora-python/src/fsi.rs::resolve
def resolve(model: Model, intent: FixedMeshMonolithic, /) -> FixedMeshMonolithicPlan: ...