¿MINLOC funciona para matrices que comienzan en el índice 0? (Fortran 90/95)

Después de usar C por un tiempo, volví a Fortran y asigné las matrices en mi código del índice 0 a N:

real(kind=dp), dimension(:), allocatable :: a 
allocate(a(0:50))

Necesitaba encontrar el índice del valor absoluto mínimo de la matriz, así que usé MINLOC, y para verificar esto lo comparé con MINVAL:

minloc(abs(a(:)))
minval(abs(a))

El resultado de MINLOC fue el índice42 pero el resultado de MINVAL correspondió a41. Aquí está la sección relevante de la salida:

Index i    a(i) 

39         0.04667    
40         0.02222    
41         0.00222           !This was clearly the minimum value
42         0.02667

MINLOC = 42
MINVAL = 0.00222

Supongo que esto tiene algo que ver con el intrínseco de Fortran que no maneja matrices con índice 0 correctamente, ya que no es el estilo estándar de Fortran declarar matrices de esta manera (¡pero todavía está permitido!).

¿Alguien puede confirmar esto u ofrecer una solución?

Respuestas a la pregunta(2)

Su respuesta a la pregunta