|
STAR
Cal STAR — firmware, DAQ server, and engine design
|
Classes | |
| class | GeometryResponse |
Functions | |
| float | _configured_convergent_half_angle_rad (config) |
| get_chamber_geometry (UserSession session=Depends(get_session)) | |
| dict | _injector_layout_or_404 (cfg) |
| get_injector_layout (UserSession session=Depends(get_session)) | |
| post_injector_layout (dict body) | |
| get_injector_spray (bool sensitivity=True, UserSession session=Depends(get_session)) | |
| _jsonable (v) | |
Variables | |
| router = APIRouter(prefix="/api/geometry", tags=["geometry"]) | |
Chamber geometry visualization endpoint.
|
protected |
Convergent half-angle [rad] from design_requirements, else the 45 deg default. The drawn contour used to be pinned at 45 deg while Layer 1 optimised against ``layer1_contraction_half_angle_deg``, so the geometry tab and the DXF showed a chamber that was not the one being scored.
Definition at line 15 of file geometry.py.
Referenced by get_chamber_geometry().
|
protected |
Definition at line 398 of file geometry.py.
Referenced by get_injector_layout(), and post_injector_layout().
|
protected |
NaN and inf are not JSON: they go out as null.
Definition at line 446 of file geometry.py.
References _jsonable().
Referenced by _jsonable(), and get_injector_spray().
| backend.routers.geometry.get_chamber_geometry | ( | UserSession | session = Depends(get_session) | ) |
Get chamber geometry for visualization. Returns the geometry arrays needed to render the chamber cross-section: - Gas boundary (inner surface) - Ablative liner (chamber region) - Graphite insert (throat region) - Stainless steel case (outer)
Definition at line 81 of file geometry.py.
References _configured_convergent_half_angle_rad().
| backend.routers.geometry.get_injector_layout | ( | UserSession | session = Depends(get_session) | ) |
Face, passage and back-face geometry of the session's impinging injector.
Definition at line 411 of file geometry.py.
References _injector_layout_or_404().
| backend.routers.geometry.get_injector_spray | ( | bool | sensitivity = True, |
| UserSession | session = Depends(get_session) ) |
Spray and mixing report of the session's impinging injector at its own tank pressures (engine/core/injectors/spray_report.py). Solves the engine, and with ``sensitivity`` once more per open input (~20 s): a plain ``def`` so FastAPI runs it off the event loop.
Definition at line 433 of file geometry.py.
References _jsonable().
| backend.routers.geometry.post_injector_layout | ( | dict | body | ) |
The same, for a config the caller holds (e.g. a Forward-mode result's config).
Takes ``{"config": {...}}`` as a plain dict and needs only the injector, chamber
diameter, discharge and design-requirements sections -- no full validation, so a
partial config still draws.
Definition at line 419 of file geometry.py.
References _injector_layout_or_404().
| backend.routers.geometry.router = APIRouter(prefix="/api/geometry", tags=["geometry"]) |
Definition at line 38 of file geometry.py.