diff --git a/Modules/Radiometry/Simulation/src/otbSoilDataBase.cxx b/Modules/Radiometry/Simulation/src/otbSoilDataBase.cxx
index 8b91083cadc562680581038d8fb661218f8e1d85..11ba50edb0c9c88fc0ce50d9e21d44c8c684c20c 100644
--- a/Modules/Radiometry/Simulation/src/otbSoilDataBase.cxx
+++ b/Modules/Radiometry/Simulation/src/otbSoilDataBase.cxx
@@ -43,10 +43,10 @@ const typename SoilDataBase::SoilDataVector& SoilDataBase::GetDB() const
 
 double SoilDataBase::GetReflectance(size_t SoilIndex, WavelenghtType wl) const
 {
-  if(SoilIndex<1 || SoilIndex > m_SoilDataVector.size()-1)
+  if(SoilIndex<1 || SoilIndex > m_SoilDataVector.size())
     {
     std::stringstream  errmessg;
-    errmessg << "Soil index must be > 0 and <= " << m_SoilDataVector.size()+1 <<'\n';
+    errmessg << "Soil index must be > 0 and <= " << m_SoilDataVector.size() <<'\n';
     throw std::range_error( errmessg.str() );
     }
   // wl not in the set of measured ones