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

53 lines
911 B
Plaintext

@startuml
class FlightSimulator {
+run()
+step()
+initialize()
+handleEvents()
+checkTermination()
+updateMotors()
}
class ForcesModel {
+computeNetForce()
+computeNetMoment()
+computeThrust()
+computeAerodynamicDrag()
+computeGravity()
}
class FlightState {
+getPosition()
+setPosition()
+getVelocity()
+setVelocity()
+getAcceleration()
+setAcceleration()
+getOrientation()
+setOrientation()
+getAngularVelocity()
+setAngularVelocity()
+getTime()
+setTime()
}
class Environment {
+getAirDensity()
+getGravity()
}
class Integrator {
+step()
+eulerIntegration()
}
FlightSimulator --> ForcesModel
FlightSimulator --> Integrator
FlightSimulator --> FlightState
FlightSimulator --> Environment
ForcesModel --> Rocket
ForcesModel --> Environment
Integrator --> Rocket
Integrator --> ForcesModel
@enduml