--- MITgcm/pkg/cal/cal_convdate.F 2001/05/14 22:07:26 1.1 +++ MITgcm/pkg/cal/cal_convdate.F 2003/09/23 04:34:24 1.2 @@ -1,4 +1,4 @@ -C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/pkg/cal/cal_convdate.F,v 1.1 2001/05/14 22:07:26 heimbach Exp $ +C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/pkg/cal/cal_convdate.F,v 1.2 2003/09/23 04:34:24 dimitri Exp $ #include "CAL_CPPOPTIONS.h" @@ -27,6 +27,9 @@ c - Introduced new routine and function names, cal_, c for verion 0.1.3. c +c 21-Sep-2003: fixed check_sign logic to work with +c negative intervals (menemenlis@jpl.nasa.gov) +c c ================================================================== c SUBROUTINE cal_ConvDate c ================================================================== @@ -53,9 +56,8 @@ integer fac integer date_1 integer date_2 - integer check_sign_1 - integer check_sign_2 integer ierr + _RL check_sign c == end of interface == @@ -63,10 +65,9 @@ c Check the sign of the date. - check_sign_1 = sign(1,date(1)) - check_sign_2 = sign(1,date(2)) + check_sign = sign(1,dble(date(1))*dble(date(2))) - if ( check_sign_1*check_sign_2 .ge. 0 ) then + if ( check_sign .ge. 0 ) then if (date(1) .eq. 0) then date_1 = date(1) if (date(2) .lt. 0) then