init commit
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
#include "simulation.h"
|
||||
|
||||
void Simulation::step(double dt) {
|
||||
// 1. What load is the drivetrain currently reflecting back onto the crank?
|
||||
// TODO: this should come from a proper torque-balance solve; for now
|
||||
// the engine ignores it (see Engine::step's placeholder body).
|
||||
double load_torque_nm = 0.0;
|
||||
m_engine.step(dt, load_torque_nm);
|
||||
|
||||
// 2. Engine torque flows down through the transmission to the wheels.
|
||||
double wheel_torque_nm = m_transmission.output_torque_nm(m_engine.torque_nm());
|
||||
|
||||
// 3. Wheel torque accelerates the vehicle.
|
||||
m_vehicle.step(dt, wheel_torque_nm);
|
||||
|
||||
// 4. Resulting wheel speed reflects back up through the transmission —
|
||||
// next tick's load_torque_nm calculation (once real) will use this.
|
||||
(void)m_transmission.reflected_engine_rpm(m_vehicle.wheel_rpm());
|
||||
}
|
||||
Reference in New Issue
Block a user