I have an error, i don't understand why collapse doesn't work in my code.
#pragma omp parallel num_threads(IntervalMapEstimator::m_num_thread)
{
std::vector<Point3D> local_relevant_points;
#pragma omp for collapse(2)
for(int i = first_list_index; i < last_list_index ; i++)
{
for (int k = 0; k < pointcloud_ff_polar_angle_lists[i].size(); k++)
{
if ( pointcloud_ff_polar_angle_lists[i][k].pol_sensor_rot.phi >= cell_start_angle && pointcloud_ff_polar_angle_lists[i][k].pol_sensor_rot.phi <= cell_end_angle )
{
#pragma omp critical
{
relevant_points.push_back(pointcloud_ff_polar_angle_lists[i][k]);
}
}
}
}
}
It doesn't work with the collapse, but it does when i'm remove the collapse. I can't figure out why, does somebody see why ? It also work in single thread.