53 lines
911 B
Plaintext
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
|