diff --git a/src/tools/OptimalAlignment.cpp b/src/tools/OptimalAlignment.cpp
index 4a5cc52d4481fcde762fa834e4f1b6172e037fd5..00e88ac7b7ca87ab7619ff550737380ad7bd8959 100644
--- a/src/tools/OptimalAlignment.cpp
+++ b/src/tools/OptimalAlignment.cpp
@@ -110,6 +110,10 @@ double OptimalAlignment::calculate(bool squared, std::vector<Vector> & derivativ
 
 	return err;
 }
+
+#ifdef __INTEL_COMPILER
+#pragma intel optimization_level 2
+#endif
 /// this does the weighed alignment if the vector of alignment is different from displacement
 double OptimalAlignment::weightedAlignment( bool rmsd){
 	double tmp0,tmp1,walign,wdisplace,const1,ret;