added Vittorio Ruggiero's additional OpenMP support, and in particular added a new compiler option -DUSE_OPENMP_ATOMIC_INSTEAD_OF_CRITICAL to use OpenMP ATOMIC statements for some critical loops instead of OpenMP CRITICAL regions.