STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
layout.py File Reference

Go to the source code of this file.

Classes

class  engine.core.injectors.layout.LdBand
class  engine.core.injectors.layout.BackEntry

Namespaces

namespace  engine
namespace  engine.core
namespace  engine.core.injectors
namespace  engine.core.injectors.layout

Functions

Optional[float] engine.core.injectors.layout._opt_float (Mapping[str, Any] req, str key)
bool engine.core.injectors.layout._opt_bool (Mapping[str, Any] req, str key, bool default)
LdBand engine.core.injectors.layout.impingement_ld_band (Optional[Mapping[str, Any]] requirements)
float engine.core.injectors.layout._half_major (float d, float theta_deg)
Any engine.core.injectors.layout._get (Any m, str key)
float engine.core.injectors.layout._f (Any v, float default=0.0)
Dict[str, float] engine.core.injectors.layout._stream (Any raw)
Optional[Dict[str, Any]] engine.core.injectors.layout._plain (Any m)
Dict[str, Any] engine.core.injectors.layout._req_dict (Any cfg)
float engine.core.injectors.layout._tan (float th)
float engine.core.injectors.layout._sin (float th)
float engine.core.injectors.layout._cos (float th)
Dict[str, Any] engine.core.injectors.layout.assembly_envelope (Any cfg)
float engine.core.injectors.layout.exit_recess (*, float d_in, float th_in, float d_out, float th_out, float exit_land)
Tuple[float, float] engine.core.injectors.layout.ring_face_reach (*, bool contoured, float r_in, float d_in, float th_in, float r_out, float d_out, float th_out, float exit_land=EXIT_LAND_DEFAULT)
Dict[str, Any] engine.core.injectors.layout.face_geometry (*, bool contoured, float r_in, float r_out, float d_in, float d_out, float th_in, float th_out, float exit_land=EXIT_LAND_DEFAULT, str groove_bottom="flat")
float engine.core.injectors.layout.face_z_at (List[Tuple[float, float]] profile, float r)
BackEntry engine.core.injectors.layout.passage_back_entry (*, float r_face, float d, float theta_deg, float plate_thickness, float counterbore_dia, float land_ld, bool is_inner, int n, float exit_depth=0.0)
Dict[str, Any] engine.core.injectors.layout.channel_for_ring (*, float r_exit, float z_exit, float d, float theta_deg, bool is_inner, float plate_thickness, float passage_ld, Optional[float] width, str floor="flat", float exit_land=EXIT_LAND_DEFAULT, Optional[float] spot_length=None)
Tuple[float, float, float] engine.core.injectors.layout._poly_area_centroid_r (List[Tuple[float, float]] ps)
Dict[str, Any] engine.core.injectors.layout._spot_channel (*, float r_exit, float z_exit, float d, float theta_deg, float k, float t, float lam_want, Optional[float] width, float exit_land, float spot)
Dict[str, float] engine.core.injectors.layout.channel_velocity_head (*, float flow_area, float mdot, float rho, float dp, int inlets=1, float q_frac=MANIFOLD_Q_FRAC)
Dict[str, float] engine.core.injectors.layout.channel_lands (*, Dict[str, Any] ch_in, Dict[str, Any] ch_out, float r_centre_hole, float r_plate)
Optional[Dict[str, Any]] engine.core.injectors.layout.igniter_keepouts (Optional[Mapping[str, Any]] igniter, *, float plate_thickness, float min_web)
List[Tuple[float, float]] engine.core.injectors.layout._fillet (Tuple[float, float] a, Tuple[float, float] P, Tuple[float, float] b, float rho, int n=6)
List[Tuple[float, float]] engine.core.injectors.layout._rounded (List[Tuple[float, float]] ps, List[float] radii)
Dict[str, Any] engine.core.injectors.layout.plate_profile (Mapping[str, Any] out, Mapping[str, Any] plate, *, bool with_port=True)
Optional[Dict[str, Any]] engine.core.injectors.layout.feed_ports (Mapping[str, Any] out, Mapping[str, Any] plate)
None engine.core.injectors.layout._check_back_features (Dict[str, Any] out)
Dict[str, Any] engine.core.injectors.layout.realized_land (*, float d, float theta_deg, float plate_thickness, float counterbore_dia, Optional[float] declared_land_ld)
Dict[str, Any] engine.core.injectors.layout._plate_block (Any cfg)
Any engine.core.injectors.layout.effective_discharge (Any engine_config, str side)
Any engine.core.injectors.layout._discharge_as_built (Any dc, Mapping[str, Any] passage)
None engine.core.injectors.layout._check_inlet_fit (Dict[str, Any] out)
None engine.core.injectors.layout._report_cd (Any cfg, Dict[str, Any] out)
Optional[Dict[str, Any]] engine.core.injectors.layout.layout_inputs_from_config (Any cfg)
Dict[str, Any] engine.core.injectors.layout.compute_layout (*, Mapping[str, float] oxidizer, Mapping[str, float] fuel, float bore_diameter, Optional[Mapping[str, Any]] envelope=None, bool fuel_outboard=True, float center_clear_dia=0.0, float min_web=0.0, float wall_clearance=0.0, float ld_min=IMPINGEMENT_LD_TARGET_DEFAULT, float ld_max=IMPINGEMENT_LD_TARGET_DEFAULT, float plate_thickness=0.0127, float counterbore_dia=0.0, float land_ld_O=4.0, Optional[float] land_ld_F=None, float min_back_web=0.0, Optional[Mapping[str, Any]] igniter=None, Optional[Mapping[str, Any]] plate=None, str ld_source_O="declared", str ld_source_F="declared", bool plate_thickness_declared=True)
Dict[str, float] engine.core.injectors.layout.flows_from_result (Mapping[str, Any] result, Any cfg)
None engine.core.injectors.layout._check_manifold (Any cfg, Dict[str, Any] out, Mapping[str, Any] flows)
float engine.core.injectors.layout._discharge_r_over_d (Any cfg, str side)
None engine.core.injectors.layout._check_cavitation (Any cfg, Dict[str, Any] out, Mapping[str, Any] flows)
Tuple[Any, Any] engine.core.injectors.layout.plate_bending_moments (Any r, *, float a, float b, float p, float nu, str support="simply_supported", float r_hole=0.0)
None engine.core.injectors.layout._check_plate (Any cfg, Dict[str, Any] out, Optional[Mapping[str, Any]] flows)
Dict[str, Any] engine.core.injectors.layout._drawing (Mapping[str, Any] plate)
None engine.core.injectors.layout._apply_drawing (Any cfg, Dict[str, Any] out)
Optional[Dict[str, Any]] engine.core.injectors.layout.layout_from_config (Any cfg, bool drawings=True, Optional[Mapping[str, Any]] flows=None, *, bool checks=True)

Variables

float engine.core.injectors.layout.IMPINGEMENT_LD_TARGET_DEFAULT = 4.0
float engine.core.injectors.layout.IMPINGEMENT_LD_TOL_UNDERIVED = 1.0
float engine.core.injectors.layout._COS_FLOOR = 0.10
float engine.core.injectors.layout.DRILL_LD_PRACTICE_MAX = 10.0
float engine.core.injectors.layout.ORIFICE_LD_MIN = 4.0
float engine.core.injectors.layout.DRILL_ENTRY_MAX_OFF_SQUARE_DEG = 10.0
float engine.core.injectors.layout.FACE_HEATING_INCLUDED_DEG = 90.0
float engine.core.injectors.layout.FREE_JET_MAX_D = 7.0
float engine.core.injectors.layout.CORE_FRAC_WARN = 0.25
float engine.core.injectors.layout.EXIT_LAND_DEFAULT = 0.0005
float engine.core.injectors.layout.PLATE_THICKNESS_DEFAULT = 0.0127
float engine.core.injectors.layout.MANIFOLD_Q_FRAC = 0.05
float engine.core.injectors.layout.PLATE_YIELD_FACTOR = 1.5
float engine.core.injectors.layout.PLATE_POISSON_DEFAULT = 0.3
float engine.core.injectors.layout.PSI = 6894.757
float engine.core.injectors.layout.ATM = 101325.0
float engine.core.injectors.layout.DRAWING_RING_TOL = 0.05e-3
float engine.core.injectors.layout.DRAWING_LD_TOL = 0.02
float engine.core.injectors.layout.DRAWING_PROFILE_TOL = 0.025e-3