This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
why a parameter changes when transfered to subroutine
- From: fanbin <fan dot wisdom at gmail dot com>
- To: fortran at gcc dot gnu dot org
- Date: Fri, 27 Jul 2007 22:03:54 -0700 (PDT)
- Subject: why a parameter changes when transfered to subroutine
I got a subroutine resh_dis(hubble,redshift,distance) which calculate this:
distance = 1.0D0/hubble*redshift*3000000D0*(1+redshift/2)/((1+redshift)**2)
in the subroutine all variables (including hubble ) were defined to be
real(kind=8), I admit that in the main program the hubble is real(kind=4)
like 62.0, than when I transfer it to the subroutine, the distance simply
become infinity, if I tranfered 62.0D0 instead of 62.0, everything becomes
fine, why? I use the gfortran compiler.
--
View this message in context: http://www.nabble.com/why-a-parameter-changes-when-transfered-to-subroutine-tf4161244.html#a11839809
Sent from the gcc - fortran mailing list archive at Nabble.com.