albert
June 16, 2023, 9:58am
2
An update regarding my situation: I’ve been debugging and got stuck at the following line of code:
{
char filename[100];
sprintf(filename, "qp_in_%d.txt", sqp_iter);
FILE *out_file = fopen(filename, "w");
print_ocp_qp_in_to_file(out_file, qp_in);
fclose(out_file);
}
#endif
// solve qp
acados_tic(&timer1);
qp_status = qp_solver->evaluate(qp_solver, dims->qp_solver, qp_in, qp_out,
opts->nlp_opts->qp_solver_opts, nlp_mem->qp_solver_mem, nlp_work->qp_work);
mem->time_qp_sol += acados_toc(&timer1);
qp_solver->memory_get(qp_solver, nlp_mem->qp_solver_mem, "time_qp_solver_call", &tmp_time);
mem->time_qp_solver_call += tmp_time;
qp_solver->memory_get(qp_solver, nlp_mem->qp_solver_mem, "time_qp_xcond", &tmp_time);
mem->time_qp_xcond += tmp_time;
// compute correct dual solution in case of Hessian regularization
acados_tic(&timer1);
the issue seems to lie here, but I dont really understand the structure of the code well enough to find the definition of the original evaluate function to investigate further. Can you guys help me finding the function?
I’ve also had a look at this: Vxworks 32bit system, PPC, Diab Compiler, Embedded application problems - #5 by FreyJo since it is also QNX and PPC, but I couldn’t replicate the fix unfortunately.
Thanks,
Albert