flowchart LR
subgraph cycle0 ["iterate: tol=0.5 max=25 relax=1.0"]
propulsion[propulsion]
trajectory[trajectory]
end
subgraph cycle1 ["iterate: tol=0.01 max=25 relax=0.9"]
thermal[thermal]
vehicle_structures[vehicle_structures]
end
aero_report[aero_report]
gnc_margins[gnc_margins]
mass_properties[mass_properties]
performance_rollup[performance_rollup]
vehicle_aero[vehicle_aero]
vehicle_aero -->|DragAreaTable| aero_report
gnc_margins -->|ControlMargin| performance_rollup
propulsion -->|Mass| mass_properties
mass_properties -->|InertiaTensor| gnc_margins
propulsion -->|EnginePerformance| trajectory
vehicle_structures -->|Mass| mass_properties
vehicle_structures -->|StructureLayout| thermal
thermal -->|Mass| vehicle_structures
mass_properties -->|Mass| performance_rollup
thermal -->|Mass| mass_properties
trajectory -->|TrajectorySummary| propulsion
trajectory -->|TrajectorySummary| vehicle_structures
vehicle_aero -->|DragTable| trajectory
classDef provOk fill:#d4edda,stroke:#28a745,color:#155724
classDef provFailed fill:#f8d7da,stroke:#dc3545,color:#721c24
classDef provNotRun fill:#e9ecef,stroke:#6c757d,color:#495057,stroke-dasharray: 5 5
class aero_report,gnc_margins,mass_properties,performance_rollup,propulsion,thermal,trajectory,vehicle_aero,vehicle_structures provOk
Above diagonal: feed-forward · Below diagonal: feedback · External column: file-bound inputs · Amber outline: draft (machine-proposed, unconfirmed) · NASA/TM-1999-209877
| From → To | External | vehicle_aero | aero_report | propulsion | trajectory | thermal | vehicle_structures | mass_properties | gnc_margins | performance_rollup |
|---|---|---|---|---|---|---|---|---|---|---|
| vehicle_aero vehicle_team | VehicleGeometry | vehicle_aero ok | DragAreaTable | DragTable | ||||||
| aero_report vehicle_team | aero_report ok | |||||||||
| propulsion vehicle_team | EngineSpec | propulsion 9 iter | EnginePerformance cycle0 | Mass | ||||||
| trajectory vehicle_team | TrajectorySummary cycle0 | trajectory 9 iter | TrajectorySummary | |||||||
| thermal vehicle_team | thermal 5 iter | Mass cycle1 | Mass | |||||||
| vehicle_structures vehicle_team | VehicleGeometry | StructureLayout cycle1 | vehicle_structures 5 iter | Mass | ||||||
| mass_properties vehicle_team | MassTable, VehicleGeometry | mass_properties ok | InertiaTensor | Mass | ||||||
| gnc_margins vehicle_team | gnc_margins ok | ControlMargin | ||||||||
| performance_rollup vehicle_team | performance_rollup ok |
| Analysis | Status | Error |
|---|---|---|
| aero_report | ok | |
| gnc_margins | ok | |
| mass_properties | ok | |
| performance_rollup | ok | |
| propulsion | ok (9 iteration(s)) | |
| thermal | ok (5 iteration(s)) | |
| trajectory | ok (9 iteration(s)) | |
| vehicle_aero | ok | |
| vehicle_structures | ok (5 iteration(s)) |
| Iteration | Metric | Residual | Member max |Δ| |
|---|---|---|---|
| 1 | 283572 | ||
| 2 | 314170 | 30598 | propulsion: 231.3, trajectory: 3.06e+04 |
| 3 | 319571 | 5401.16 | propulsion: 40.83, trajectory: 5401 |
| 4 | 320524 | 953.41 | propulsion: 7.208, trajectory: 953.4 |
| 5 | 320693 | 168.296 | propulsion: 1.272, trajectory: 168.3 |
| 6 | 320722 | 29.7075 | propulsion: 0.2246, trajectory: 29.71 |
| 7 | 320728 | 5.24396 | propulsion: 0.03964, trajectory: 5.244 |
| 8 | 320729 | 0.925662 | propulsion: 0.006998, trajectory: 0.9257 |
| 9 | 320729 | 0.163398 | propulsion: 0.001235, trajectory: 0.1634 |
| Iteration | Metric | Residual | Member max |Δ| |
|---|---|---|---|
| 1 | 764.575 | ||
| 2 | 765.951 | 1.37623 | thermal: 1.376, vehicle_structures: 68.81 |
| 3 | 766.091 | 0.140101 | thermal: 0.1401, vehicle_structures: 7.005 |
| 4 | 766.105 | 0.0142622 | thermal: 0.01426, vehicle_structures: 0.7131 |
| 5 | 766.107 | 0.0014519 | thermal: 0.001452, vehicle_structures: 0.07259 |
| Requirement | Applies to | Value | Limit | Margin | Status | Owners |
|---|---|---|---|---|---|---|
| REQ-GLOW-001 | performance_rollup.vehicle_performance/gross_mass_kg | 18447.1 kg | max 20000 | +8.4% | pass | vehicle_team |
| REQ-PROP-001 | trajectory.trajectory_summary/required_propellant_lbm | 145480 kg | max 160000 | +10.0% | pass | vehicle_team |
| Commit | Date | Author | Changes |
|---|---|---|---|
7457841590 | 2026-07-25T22:43:36+10:00 | David Prime | /artifact_type added = 'EngineSpec'/data added = {'vacuum_thrust_n': 1000000.0, 'specific_impulse_s': 300.0, 'engine_dry_mass_kg': 1500.0} |
| Commit | Date | Author | Changes |
|---|---|---|---|
7457841590 | 2026-07-25T22:43:36+10:00 | David Prime | /artifact_type added = 'VehicleGeometry'/data added = {'diameter_m': 3.0, 'length_m': 30.0, 'reference_area_m2': 7.0686} |
| # | Step |
|---|---|
| 1 | vehicle_aero |
| 2 | aero_report |
| 2 | cycle: propulsion <-> trajectory | converge trajectory.trajectory_summary/required_propellant_lbm tol=0.5 max_iter=25 relax=1.0 |
| 3 | cycle: thermal <-> vehicle_structures | converge thermal.tps_mass tol=0.01 max_iter=25 relax=0.9 |
| 4 | mass_properties |
| 5 | gnc_margins |
| 6 | performance_rollup |
| Producer | Consumer | Artifact | Mapping | Source file |
|---|---|---|---|---|
| vehicle_aero.drag_area_table | aero_report.drag_profile | DragAreaTable | aero_to_report_drag_profile | projects/vehicle_sizing/mappings/aero_to_report_drag_profile.yaml |
| gnc_margins.control_margin | performance_rollup.control_margin | ControlMargin | control_margin_to_rollup | lib/mappings/control_margin_to_rollup.yaml |
| propulsion.engine_mass | mass_properties.component_masses | Mass | engine_mass_to_mass_properties | projects/vehicle_sizing/mappings/engine_mass_to_mass_properties.yaml |
| mass_properties.inertia_tensor | gnc_margins.inertia_tensor | InertiaTensor | inertia_to_gnc | projects/vehicle_sizing/mappings/inertia_to_gnc.yaml |
| propulsion.engine_performance | trajectory.engine_performance | EnginePerformance | propulsion_to_trajectory | projects/vehicle_sizing/mappings/propulsion_to_trajectory.yaml |
| vehicle_structures.structure_mass | mass_properties.component_masses | Mass | structure_mass_to_mass_properties | projects/vehicle_sizing/mappings/structure_mass_to_mass_properties.yaml |
| vehicle_structures.structure_layout | thermal.structure_layout | StructureLayout | structures_to_thermal | projects/vehicle_sizing/mappings/structures_to_thermal.yaml |
| thermal.tps_mass | vehicle_structures.tps_mass | Mass | thermal_to_structures_feedback | projects/vehicle_sizing/mappings/thermal_to_structures_feedback.yaml |
| mass_properties.total_mass | performance_rollup.total_mass | Mass | total_mass_to_rollup | lib/mappings/total_mass_to_rollup.yaml |
| thermal.tps_mass | mass_properties.component_masses | Mass | tps_mass_to_mass_properties | projects/vehicle_sizing/mappings/tps_mass_to_mass_properties.yaml |
| trajectory.trajectory_summary | propulsion.required_propellant | TrajectorySummary | trajectory_to_propulsion_feedback | projects/vehicle_sizing/mappings/trajectory_to_propulsion_feedback.yaml |
| trajectory.trajectory_summary | vehicle_structures.max_q | TrajectorySummary | trajectory_to_structures_max_q | projects/vehicle_sizing/mappings/trajectory_to_structures_max_q.yaml |
| vehicle_aero.drag_table | trajectory.drag_table | DragTable | vehicle_aero_to_trajectory | projects/vehicle_sizing/mappings/vehicle_aero_to_trajectory.yaml |
| Port | File |
|---|---|
| mass_properties.fixed_masses | projects/vehicle_sizing/examples/vehicle/data/vehicle_fixed_masses.csv |
| mass_properties.geometry | projects/vehicle_sizing/examples/vehicle/vehicle_geometry.yaml |
| propulsion.engine_spec | projects/vehicle_sizing/examples/vehicle/engine_spec.yaml |
| vehicle_aero.geometry | projects/vehicle_sizing/examples/vehicle/vehicle_geometry.yaml |
| vehicle_structures.geometry | projects/vehicle_sizing/examples/vehicle/vehicle_geometry.yaml |