98ff57ed08
Fixes Module 1 UI: - wizard_cruiser/sailing/planing: perfiles sin^n calibrados por Cm, V-bottom con ángulo de astilla, corrección zona sobre chine planeador - viewer_3d: buffer hull pendiente para eliminar race condition 500ms - viewer_lines: reescritura completa — waterlines visibles, control points interactivos (drag DelftShip-style), señal offsets_edited - main_window: conecta offsets_edited → slot _on_offsets_edited_from_viewer que propaga cambios a todos los visores, editor, 3D y barra hidrostática Módulo 2 — motor HydrostaticCurves (Task 13): - integrator.py: integrate() (Simpson+trapz), waterplane_strips(), section_areas() - upright.py: UprightHydrostatics (19 campos), compute_upright() single-pass - curves_of_form.py: HydrostaticCurves.compute(), at_draft(), to_csv_lines(), to_dict() - tests/test_module2_hydrostatics.py: 83 tests — Wigley V&V, monotonicidad, CSV export, IACS Rec.34 §4.3–4.5; todos los 224 tests pasan Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
31 lines
753 B
Python
31 lines
753 B
Python
"""
|
|
arshipdesign.hydrostatics — motor de hidrostáticos navales.
|
|
|
|
Módulos
|
|
-------
|
|
integrator Primitivas numéricas (Simpson/trapecios).
|
|
upright UprightHydrostatics (calado único) + compute_upright().
|
|
curves_of_form HydrostaticCurves (barrido de calados).
|
|
|
|
Uso rápido
|
|
----------
|
|
>>> from arshipdesign.hydrostatics import HydrostaticCurves
|
|
>>> curves = HydrostaticCurves.compute(hull, n_points=20)
|
|
>>> print(curves.displacements)
|
|
"""
|
|
from arshipdesign.hydrostatics.upright import (
|
|
UprightHydrostatics,
|
|
compute_upright,
|
|
)
|
|
from arshipdesign.hydrostatics.curves_of_form import (
|
|
HydrostaticCurves,
|
|
CSV_HEADERS,
|
|
)
|
|
|
|
__all__ = [
|
|
"UprightHydrostatics",
|
|
"compute_upright",
|
|
"HydrostaticCurves",
|
|
"CSV_HEADERS",
|
|
]
|