qtrocket2/docs/rocket_system.puml
2025-04-20 12:29:36 -06:00

52 lines
870 B
Plaintext

@startuml
class Rocket {
+addStage()
+updateMassProperties()
+prepareForFlight()
+applyFlightState()
+getTotalMass()
+getCenterOfGravity()
+getCenterOfPressure()
}
class Stage {
+addMotor()
+setAirframe()
+setFinSet()
+setRecoverySystem()
+updateMassProperties()
+getTotalThrust()
}
class Motor {
+addThrustDataPoint()
+ignite()
+update()
+getCurrentThrust()
}
class Airframe {
+getLength()
+getReferenceArea()
}
class FinSet {
+calculateNormalForceCoefficient()
+calculateCenterOfPressure()
+calculateDragArea()
+calculateMass()
}
class RecoverySystem {
+checkDeploymentCondition()
+deploy()
+isDeployed()
}
Rocket "1" *-- "*" Stage
Stage "1" *-- "*" Motor
Stage "1" *-- "0..1" Airframe
Stage "1" *-- "0..1" FinSet
Stage "1" *-- "0..1" RecoverySystem
@enduml