Vector<double> Car::calculate_dependent_variables_dots(const NeuralNetwork& neural_network, const Vector<double>& variables) const { const double time = variables[0]; // const double position = variables[1]; const double velocity = variables[2]; const Vector<double> inputs(1, time); const Vector<double> outputs = neural_network.calculate_outputs(inputs); const double acceleration = outputs[0]; const double deceleration = outputs[1]; const double position_dot = velocity; const double velocity_dot = acceleration + deceleration; Vector<double> dependent_variables_dots(dependent_variables_number, 0.0); dependent_variables_dots[0] = position_dot; dependent_variables_dots[1] = velocity_dot; return(dependent_variables_dots); }
Vector<double> MockOrdinaryDifferentialEquations::calculate_dependent_variables_dots(const NeuralNetwork&, const Vector<double>&) const { Vector<double> dependent_variables_dots(dependent_variables_number, 0.0); return(dependent_variables_dots); }